package com.hospital.dao;

import com.hospital.dto.MedicineDto;
import com.hospital.dto.MedicineUserDto;
import com.hospital.entity.Medicine;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface MedicineDao {
    //新增
    int add(Medicine medicine);
    //删除
    int delete(Integer id);
    //修改
    int update(Medicine medicine);
    //查询总条数
    long selectCount(String name);
    //分页查询
    List<Medicine> selectPage(@Param("name") String name, @Param("start") int start, @Param("size") int size);

    int updatelog(@Param("id") int mid,@Param("stock") int stock);
    //模糊查询指定功效的药品总条数
    long countByInfo(String effect);
    //分页查询指定功效的药品总条数
    List<Medicine> pageByInfo(@Param("effect") String effect, @Param("start") int start, @Param("size") int size);
    //批量删除
    int deleteId(int[] id);

    List<MedicineDto> all();
    List<MedicineUserDto> all2();

    /**
     * 批量新增*/
    int saveBatch(List<Medicine> list);

    List<MedicineUserDto> page(@Param("mname") String mname, @Param("start") int start, @Param("size") int size);

    long count(@Param("mname") String mname);

    //查询药品库存
    int queryStock(int id);

}
